// pages/index1/index.js
const app = getApp()
// const requeat = require('/utils/request')

Page({

  /**
   * 页面的初始数据
   */
  data: {
    background: ['demo-text-1', 'demo-text-2', 'demo-text-3'],
    indicatorDots: true,
    vertical: false,
    autoplay: false,
    interval: 2000,
    duration: 500,
    count:1,
    banners:[],
    Icon:[],
    news:[],
    newsIndex:0,
    newsTimer:0,
    newItems:'tansform:tanslate(0rpx,0rpx)',
    lists:[],
    pageNum:1,
    total:0,
    loading:'数据加载中...'
  },

  tapNameBig(even){
    console.log('tapNameBig',even)
    let count = this.data.count
    count++
    this.setData({
      count
    })
    this.data.count = count
  },

  tapName(event){
    console.log('点击成功',event)
    let url = event.currentTarget.dataset.path
    wx.showModal({
      cancelColor: 'cancelColor',
      title:'提示',
      //showCancel:false,
      content:'是否跳转到新的页面',
      success(e){
        console.log(url)
        wx.switchTab({ //跳转到一个新的页面
          url:'/pages/index/index',
        })
      }
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {
    console.log('I am onRady')
  },
  
  getNews(){  //刷新接收回调函数的时候要写callback或者next
    return new Promise((resolve,reject) =>{
      wx.get('/index/news').then((res)=>{
        this.setData({
          news:res
        })
        this.changeNewsIndex()//触发新闻轮播
        resolve()
      })
    })
    // wx.$https.get('/index/news').then((res) =>{
    //   return new Promise((resolve,reject) =>{
    //     this.setData({
    //       news:res
    //     })
    //     resolve()
    //   })
    // }).then(()=>{
    //   this.changeNewsIndex()//触发新闻轮播
    //   if(typeof callback == 'function') callback()
    // })
        
    // console.log(wx.$https.get('/index/news',(res) =>{
    //   this.setData({
    //     news:res
    //   })
    //   this.changeNewsIndex()//触发新闻轮播
    //   if(typeof callback == 'function') callback()
    // }))
    

    // wx.request({   //从服务器上获取轮播图
    //   url: 'https://obuge.com/juzao/index/news', //接口地址
    //   success: (res)=> {
    //     // console.log(res,res)
    //     this.setData({
    //       news:res
    //     })
    //     this.changeNewsIndex()//出发新闻轮播
    //     if(typeof callback == 'funtion') callback()
    //   }   
    // }) 

    // let timer = setTimeout(()=>{
    //   let news =  [
    //     {
    //       id:1,
    //       img:'/images/tu2.png',
    //       title:'简雅新中式，极致的东方惊艳'
    //     },
    //     {
    //       id:2,
    //       img:'/images/tu2.png',
    //       title:'进口magis家具，剪刀石头布家具，所见即所得'
    //     },
    //     {
    //       id:3,
    //       img:'/images/tu2.png',
    //       title:'新人优惠，U先试用'
    //     },
    //     {
    //       id:4,
    //       img:'/images/tu2.png',
    //       title:'高端定制，想你所想'
    //     }
    //   ]
    //   this.setData({
    //     news
    //   })
    //   if(callback) callback()//判断并触发回调函数
    // },500)
  },

  getBanners(){//获取轮播图
    return new Promise((resolve,reject)=>{
      wx.get('/index/banners').then(res=>{
        this.setData({
          banners:res
        })
        resolve()
      })
    })

    // return new Promise((resolve,reject)=>{
    //   wx.request({   //从服务器上获取轮播图
    //     url: 'https://obuge.com/juzao/index/banners', //接口地址
    //     success: (res)=> {
    //       // console.log(res,res)
    //       this.setData({
    //         banners:res
    //       })
    //       resolve()
    //     }   
    //   })  
    // })


    // wx.request({   //从服务器上获取轮播图
    //   url: 'https://obuge.com/juzao/index/banners', //接口地址
    //   success: (res)=> {
    //     // console.log(res,res)
    //     this.setData({
    //       banners:res
    //     })
    //   }   
    // })  


    // let timer = setTimeout(()=>{//自己模拟获取轮播图
    //   let banners = [
    //     {
    //       id:1,
    //       img:'/images/tu1.png',
    //       path:'/images/bake1.png'
    //     },
    //     {
    //       id:2,
    //       img:'/images/tu2.png',
    //       path:'/images/bake1.png'
    //     },
    //     {
    //       id:3,
    //       img:'/images/tu3.png',
    //       path:'/images/bake1.png'
    //     },
    //     {
    //       id:4,
    //       img:'/images/tu4.png',
    //       path:'/images/bake1.png'
    //     },
    //     {
    //       id:5,
    //       img:'/images/tu5.png',
    //       path:'/images/bake1.png'
    //     },
    //     {
    //       id:8,
    //       img:'/images/tu8.png',
    //       path:'/images/bake1.png'
    //     }
    //   ]
    //   this.setData({
    //     banners
    //   })
    // },3000)
  },

  changeNewsIndex(){ //新闻轮播
    if(this.data.newsTimer){
      this.data.newsTimer = 0
    }
    this.data.newsTimer = setInterval(()=>{
      let newsIndex = this.data.newsIndex
      newsIndex = newsIndex + 0.5
      // console.log(this.data.news)
      if(newsIndex == this.data.news.length) newsIndex = 0//最后一张切换到第一张
      // console.log(newsIndex)
      this.setData({     
        newsIndex,
        newItems:'tansform:tanslate(0rpx,-' + newsIndex*80 +'rpx)' 
      })
    },3000)
  },

  getIcon(){
    return new Promise((resolve,reject)=>{
      wx.get('/index/categorys').then((res)=>{
        this.setData({
          Icon:res
        })
        resolve()
      })
    })


    // return new Promise((resolve,reject)=>{
    //   wx.request({
    //     url:'https://obuge.com/juzao/index/categorys',
    //     success: (res)=>{
    //       this.setData({
    //         Icon:res
    //       })
    //     }
    //   })
    // })
    
    
    // wx.request({
    //   url:'https://obuge.com/juzao/index/categorys',
    //   success: (res)=>{
    //     this.setData({
    //       Icon:res
    //     })
    //   }
    // })
     
  
    // this.data.Icom
    // let Icom = [
    //   {
    //     id:2,
    //     img:'/images/tu2.png',
    //     name:'新品收晒',
    //     path:'/images/bake1.png'
    //   },
    //   {
    //     id:3,
    //     img:'/images/tu3.png',
    //     name:'高端定制',
    //     path:'/images/bake1.png'
    //   },
    //   {
    //     id:4,
    //     img:'/images/tu4.png',
    //     name:'会员中心',
    //     path:'/images/bake1.png'
    //   },
    //   {
    //     id:5,
    //     img:'/images/tu5.png',
    //     name:'全部分类',
    //     path:'/images/bake1.png'
    //   }
    // ]
    // this.setData({
    //   Icom
    // },3000)
  },  

  getRecomend(){
    return new Promise((resolve,reject)=>{
      this.setData({loading:'数据加载中...'})
      wx.get('/index/recommends',{
        pageNum: this.data.pageNum
      }).then(res=>{
        this.setData({
          loading:'已加载完成',
          lists:this.data.lists.concat(res.rows),
          total:res.total
        })
        resolve()
      })
    })
    // return new Promise((resolve,reject)=>{
    //   this.setData({loading:'数据加载中...'})
    //   wx.request({   //从服务器上获取轮播图
    //   url: 'https://obuge.com/juzao/index/recommends?pageNum='+this.data.pageNum, //接口地址
    //   success: (res)=> {
    //     console.log(res)
    //     this.setData({
    //       loading:'已加载完成',
    //       lists:this.data.lists.concat(res.rows),
    //       total:res.total
    //     })
    //     resolve()
    //   }   
    //   }) 
    // })
  },

  onPullDownRefresh(){//下拉刷新，重新获取数据
    this.data.pageNum = 1
    this.data.lists = []
    this.getList()

    // this.getNews(),
    // this.changeNewsIndex(()=>{
    //   wx.stopPullDownRefresh()  //放了一个回调函数，回调函数是匿名的
    // })
    // this.getRecomend()
  },

  getList(){
    Promise.all([this.getNews(),this.getBanners(),this.getIcon(),this.getRecomend()]).then(() =>{
      console.log('所有数据加载完成')
    }).catch(e=>{
      console.log(e)
    })
  },

  onLoad(query){  //小程序生命周期,运行、触发要写在这里
    // this.getBanners()//调用getBanners,获取轮播图
    // this.getNews()
    // this.changeNewsIndex()
    // this.getIcon()
    // this.getRecomend()
    
    // Promise.all([this.getNews(),this.getBanners(),this.getIcon(),this.getRecomend()]).then(() =>{
    //   console.log('所有数据加载完成')
    // }).catch(e=>{
    //   console.log(e)
    // })

    this.getList()
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
 

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
    if(this.data.total>=this.data.lists.length){
      this.data.pageNum ++
      this.getRecomend()
    }
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})
